Hierarchical XML File Import Notes

This topic provides notes on using hierarchical XML import when creating a new record in a different business object and then linking it to an imported business object that was created by a value and not by a RecID.

See below for a sample XML file. This sample XML file inserts an incident, inserts a task, then links the task to the incident.

When creating a record, the incident number is not required in the field list, but is required for updating. However, it needs to be in the unique key list since the processing logic needs to know the unique identifier for the business object.

ProfileLink is a required field for the incident business object (it is the Customer field in the Incident workspace).

In the workspace, the combo is using the value of the DisplayName field for the display, but saves the value of the RecID in the Incident business object.

For the XML file, if you know the ProfileLink_RecID, then you can pull the unique customer information. However, you will not know the RecID, so using the DisplayName field lets the Integration Server pull the required customer information. The DisplayName is not unique, so the current logic pulls the first record that matches.

Lacking the user interface logic, the XML file might need a special default unique customer information, since it cannot pull login user ID to the workspace.

Sample XML File

<?xml version="1.0" encoding="UTF-8"?>

<BusinessObjectList xsi:noNamespaceSchemaLocation="HierarchicalObjects-1.0.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" SchemaVersion="1.0">

<!-- Insert -->

<BusinessObject Name="Incident">

<!-- Parent business object insert -->

<Transaction>Insert</Transaction>

<UniqueKeyList>

<UniqueKey>

<Field Name="IncidentNumber"/>

</UniqueKey>

</UniqueKeyList>

<FieldList>

<Field Name="Subject">Test Subject for Incident</Field>

<Field Name="Symptom">Description</Field>

<Field Name="Status">Logged</Field>

<Field Name="Service">Service Desk</Field>

<Field Name="Owner">Alan Taylor</Field>

<Field Name="OwnerTeam">Service Desk</Field>

<Field Name="Impact" Type="System.String">Low</Field>

<Field Name="Urgency" Type="High</Field>

<Field Name="Source" Type="System.String">Email</Field>

<Field Name="Category" Type="System.String">Service Desk</Field>

<Field Name="ProfileLink">John M Doe</Field>

</FieldList>

<RelatedBusinessObjectList>

<!-- Child business object insert and link-->

<RelatedBusinessObject Relationship="IncidentAssocTaskAssignment">

<BusinessObject Name="Task#Assignment">

<Transaction>Insert</Transaction>

<LinkTransaction>Link</LinkTransaction>

<UniqueKeyList>

<UniqueKey>

<Field Name="AssignmentID"/>

</UniqueKey>

</UniqueKeyList>

<FieldList>

<Field Name="Subject" Type="System.String">Do the work</Field>

<Field Name="OwnerTeam" Type="System.String">Service Desk</Field>

</FieldList>

</BusinessObject>

</RelatedBusinessObject>

</RelatedBusinessObjectList>

</BusinessObject>

</BusinessObjectList>